package a_doubleWrite;

import java.util.ArrayList;
import java.util.List;

/**
 * 118. 杨辉三角
 * 给定一个非负整数 numRows，生成「杨辉三角」的前 numRows 行。
 *
 * 在「杨辉三角」中，每个数是它左上方和右上方的数的和。
 * @author luolidong
 * @version 1.0
 * @create 2021-07-25 17:49
 */
public class L118 {
    public List<List<Integer>> generate(int numRows) {
        List<List<Integer>> list=new ArrayList<>();
        List<Integer> l1=new ArrayList<>();
        l1.add(1);
        list.add(l1);
        for (int i = 1; i <numRows ; i++) {
            List<Integer> list1=new ArrayList<>();
            list1.add(1);
            for (int j = 0; j <i-1 ; j++) {
                list1.add(list.get(i-1).get(j)+list.get(i-1).get(j+1));
            }
            list1.add(1);
            list.add(list1);
        }
        return list;
    }

    public static void main(String[] args) {
        L118 l118 = new L118();
        List<List<Integer>> generate = l118.generate(4);
        System.out.println(generate);
    }
}
